package ro.fortech.peaa.repository.api;

import java.util.List;

import ro.fortech.peaa.domain.Employee;

public interface IEmployeeMapper {
	
	public static final String ID = "EMPLOYEE_ID";
	public static final String FIRST_NAME = "FIRST_NAME";
	public static final String LAST_NAME = "LAST_NAME";
	public static final String EMAIL = "EMAIL";
	public static final String PHONE_NUBER = "PHONE_NUMBER";
	public static final String HIRE_DATE = "HIRE_DATE";
	public static final String JOB_ID = "JOB_ID";
	public static final String SALARY = "SALARY";
	public static final String COMMISSION_PCT = "COMMISSION_PCT";
	public static final String MANAGER_ID = "MANAGER_ID";
	public static final String DEPARTMENT_ID = "DEPARTMENT_ID";
	public static final String VERSION ="VERSION";
	
	public static final String TABLE = "EMPLOYEES";

	public Employee find(Integer id) throws Exception;
	
	public List<Employee> findAll() throws Exception;
	
	public void insert(Employee employee) throws Exception;
	
	public void delete(Employee employee) throws Exception;
	
	public void update(Employee employee) throws Exception;
	
	/**
	 * Get number of employees
	 * @return number of employees
	 * @throws Exception
	 */
	public Integer count() throws Exception;

}
